"""
    存储所有基础设定
"""

# ---------------------------------------------------------------------------基础常量 无需更改
class Block_type:  # 精灵的种类
    abstract_block = -1  # 抽象的不显示的精灵块
    block = 0  # 普通的和静态的图片块
    dynamic_image_block = 1  # 动态的图片块
    text_block = 2  # 显示文字的块
    multi_line_text_block = 3  # 动态多行的显示文字块
    button = 4  # 基础的按钮
    panel = 5  # 显式精灵组


class Color_type:  # 颜色预值
    BLACK = (0, 0, 0)
    WHITE = (255, 255, 255)
    BRIGHT_BLUE = (0, 50, 255)
    DARK_TURQUOISE = (3, 54, 73)
    GREEN = (140, 200, 140)
    LIGHT_GREEN = (155, 222, 155)
    VERY_LIGHT_GREEN = (200, 240, 200)
    RED = (255, 0, 0)
    LIGHT_RED = (255, 153, 153)
    YELLOW = (255, 255, 0)
    MAGENTA = (255, 0, 255)
    LIGHT_GREY = (180, 180, 180)
    LIGHT_BLUE = (100, 180, 220)  # 淡蓝色
    GREY = (128, 128, 128)
    LOW_WHITE = (238, 238, 238)  # 不那么亮的白色
    DEEP_GREY = (50, 50, 50)
    RICE_YELLOW = (240,230,190)


class FPS_type:  # 帧率种类class
    LOW_PIXEL = 16
    BASE_PIXEL = 8
    HIGH_PIXEL = 4
    LOW = 15
    BASE = 30
    HIGH = 45
    SUPER = 60
    SUPER_PRO = 120


# ---------------------------------------------------------------------------自定义系统变量 更改会变换显示效果
# 让方块绘制自己的rect域
show_rect_collision = False
# 显示帧率
show_fps = True
# 显示rect域是的线段尺寸
block_surface_width = 1  # 方块域
image_surface_width = 2  # 图像域
collision_surface_width = 2  # 碰撞域

# 窗口标题
window_text = "arisu`s connect6"
window_icon_url = ".\\recourse\\among.png"

# 编辑框内宽度
edit_block_inner_width = 5
# bar滚动敏感度
bar_sensitive = 20
bar_width = 10

basic_delete_speed = 2  # 基础的文字编辑删除速度
basic_first_delete_wait = 30  # 首次删除间隔时间
basic_font_url = './recourse/xiangshu.ttf'  # 基础的字体样式
basic_font_size = 20  # 基础的字体大小
basic_line_interval = 1  # 基础的行间距
basic_word_interval = 1  # 基础的字间距
basic_cursor_width = 2  # 基础的光标宽度
basic_cursor_show_speed = 30  # 基础的光标闪烁速度

# 窗口宽度
window_width = 720
# 窗口高度
window_height = 400
# 最大帧限制
fps_limit = FPS_type.SUPER
# 填充背景颜色
background_color = Color_type.WHITE

# ---------------------------------------------------------------------------自定义自动变量 可以改变内部结构,不能删除
# 绘制层级,根据图层绘制 (layer_Name : layer_level)
layers = {
    "bk_layer": 0,
    "base_layer": 1,
    "cut_scenes_layer": 2,  # 过场动画
    "system_layer": 3  # 显示帧率
}

# 公共的计时器 使用统一公共的计时器可以减少额外的计算 公共计时器始终保持运行
public_timer_dict = {
    "base_timer_8": 8,
    "swap_timer_40": 40
}

# ---------------------------------------------------------------------------自定义用户变量 由用户随意更改的global变量
author = "arisu"

# 六子棋地形字典
connect_6_bk_tile_dict = {
    "pass": -1
}
